// babel:转码工具;
// 可以把高版本的js代码转化为低版本的;
// http://babeljs.cn/

// 常量: 一经赋值无法改变
const a = 10;

// let: es6 推荐使用let代替var
// let与var相比,添加了块级作用域
// 声明的变量在距离他最近的大括号中可以使用
// 除了大括号就不能使用了
let b = 12;

if (true) {
    var c = 10;
}
console.log(c);

if (true) {
    let d = 110;
}

// 下面代码会报错
// console.log(d);

// 字符串模板
const str = `hello world
           你好`;

// 箭头函数: 固化this指向为当前上下文
setTimeout(() => {
    console.log('这是一个箭头函数');
}, 1200);

// class: 类
class People {
    constructor(name, age) {
        this.name = name;
        this.age = age;
    }
    sayHello() {
        console.log('你好,我是' + this.name);
    }
}
const p = new People('lucy', 20);
p.sayHello();

